/*
 * @Description:
 * @Author: chenjiaxin
 * @Date: 2022-05-12 06:57:41
 * @LastEditTime: 2022-05-20 07:02:00
 * @FilePath: \leetcode\C\53-最大子数组和\index2.js
 */
var maxSubArray = function (nums) {
  let maxSum = nums[0];
  let sum = nums[0];
  for (let index = 1; index < nums.length; index++) {
    const currNum = nums[index];
    // 累计和 大于或等于0 继续相加 否则舍去  从当前值开始累计
    if (sum >= 0) {
      sum += currNum;
    } else {
      sum = currNum;
    }

    maxSum = Math.max(maxSum, sum);
  }
  return maxSum;
};
// 4,-1,2,1, 是目前最大的和 6.  要不要加 -5 呢？ 第一种情况 不加，第二种 要加 因为后面有更大的数100
// [-2,1,-3,  4,-1,2,1,  -5,4]
// [-2,1,-3,  4,-1,2,1,  -5,100]
//
// maxSubArray()
